home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 January: Mac OS SDK / Dev.CD Jan 97 SDK1.toast / Development Kits (Disc 1) / Interfaces&Libraries / Interfaces / AIncludes / ColorPicker.a < prev    next >
Encoding:
Text File  |  1996-01-24  |  15.3 KB  |  678 lines  |  [TEXT/MPS ]

  1. ;
  2. ;    File:        ColorPicker.a
  3. ;
  4. ;    Contains:    Color Picker package Interfaces.
  5. ;
  6. ;    Version:    Technology:    System 7.5
  7. ;                Package:    Universal Interfaces 2.2 in “MPW” on ETO #20
  8. ;
  9. ;    Copyright:    © 1984-1995 by Apple Computer, Inc.
  10. ;                All rights reserved.
  11. ;
  12. ;    Bugs?:        If you find a problem with this file, use the Apple Bug Reporter
  13. ;                stack.  Include the file and version information (from above)
  14. ;                in the problem description and send to:
  15. ;                    Internet:    apple.bugs@applelink.apple.com
  16. ;                    AppleLink:    APPLE.BUGS
  17. ;
  18. ;
  19.  
  20.     IF &TYPE('__COLORPICKER__') = 'UNDEFINED' THEN
  21. __COLORPICKER__ SET 1
  22.  
  23.  
  24.     IF &TYPE('__QUICKDRAW__') = 'UNDEFINED' THEN
  25.     include 'Quickdraw.a'
  26.     ENDIF
  27. ;        include 'Types.a'                                            ;
  28. ;            include 'ConditionalMacros.a'                            ;
  29. ;        include 'MixedMode.a'                                        ;
  30. ;        include 'QuickdrawText.a'                                    ;
  31.  
  32.     IF &TYPE('__MIXEDMODE__') = 'UNDEFINED' THEN
  33.     include 'MixedMode.a'
  34.     ENDIF
  35.  
  36.     IF &TYPE('__WINDOWS__') = 'UNDEFINED' THEN
  37.     include 'Windows.a'
  38.     ENDIF
  39. ;        include 'Memory.a'                                            ;
  40. ;        include 'Events.a'                                            ;
  41. ;            include 'OSUtils.a'                                    ;
  42. ;        include 'Controls.a'                                        ;
  43. ;            include 'Menus.a'                                        ;
  44.  
  45.     IF &TYPE('__DIALOGS__') = 'UNDEFINED' THEN
  46.     include 'Dialogs.a'
  47.     ENDIF
  48. ;        include 'Errors.a'                                            ;
  49. ;        include 'TextEdit.a'                                        ;
  50.  
  51.     IF &TYPE('__CMAPPLICATION__') = 'UNDEFINED' THEN
  52.     include 'CMApplication.a'
  53.     ENDIF
  54. ;        include 'Files.a'                                            ;
  55. ;            include 'Finder.a'                                        ;
  56. ;        include 'Printing.a'                                        ;
  57. ;        include 'CMICCProfile.a'                                    ;
  58.  
  59.     IF &TYPE('__BALLOONS__') = 'UNDEFINED' THEN
  60.     include 'Balloons.a'
  61.     ENDIF
  62.  
  63. ;Maximum small fract value, as long
  64. MaxSmallFract                    EQU        $0000FFFF
  65.  
  66. kDefaultWidth                    EQU        383
  67. kDefaultHeight                    EQU        238
  68.  
  69. kDidNothing                        EQU        0
  70. kColorChanged                    EQU        1
  71. kOkHit                            EQU        2
  72. kCancelHit                        EQU        3
  73. kNewPickerChosen                EQU        4
  74. kApplItemHit                    EQU        5
  75.  
  76. ; typedef short             PickerAction
  77.  
  78. kOriginalColor                    EQU        0
  79. kNewColor                        EQU        1
  80.  
  81. ; typedef short             ColorType
  82.  
  83. kCut                            EQU        0
  84. kCopy                            EQU        1
  85. kPaste                            EQU        2
  86. kClear                            EQU        3
  87. kUndo                            EQU        4
  88.  
  89. ; typedef short             EditOperation
  90.  
  91. kMouseDown                        EQU        0
  92. kKeyDown                        EQU        1
  93. kFieldEntered                    EQU        2
  94. kFieldLeft                        EQU        3
  95. kCutOp                            EQU        4
  96. kCopyOp                            EQU        5
  97. kPasteOp                        EQU        6
  98. kClearOp                        EQU        7
  99. kUndoOp                            EQU        8
  100.  
  101. ; typedef short             ItemModifier
  102.  
  103. kAtSpecifiedOrigin                EQU        0
  104. kDeepestColorScreen                EQU        1
  105. kCenterOnMainScreen                EQU        2
  106.  
  107. ; typedef short             DialogPlacementSpec
  108.  
  109. DialogIsMoveable                EQU        1
  110. DialogIsModal                    EQU        2
  111. CanModifyPalette                EQU        4
  112. CanAnimatePalette                EQU        8
  113. AppIsColorSyncAware                EQU        16
  114. InSystemDialog                    EQU        32
  115. InApplicationDialog                EQU        64
  116. InPickerDialog                    EQU        128
  117. DetachedFromChoices                EQU        256
  118. CanDoColor                        EQU        1
  119. CanDoBlackWhite                    EQU        2
  120. AlwaysModifiesPalette            EQU        4
  121. MayModifyPalette                EQU        8
  122. PickerIsColorSyncAware            EQU        16
  123. CanDoSystemDialog                EQU        32
  124. CanDoApplDialog                    EQU        64
  125. HasOwnDialog                    EQU        128
  126. CanDetach                        EQU        256
  127.  
  128. kNoForcast                        EQU        0
  129. kMenuChoice                        EQU        1
  130. kDialogAccept                    EQU        2
  131. kDialogCancel                    EQU        3
  132. kLeaveFocus                        EQU        4
  133. kPickerSwitch                    EQU        5
  134. kNormalKeyDown                    EQU        6
  135. kNormalMouseDown                EQU        7
  136.  
  137. ; typedef short             EventForcaster
  138. ; A SmallFract value is just the fractional part of a Fixed number,
  139. ;which is the low order word.  SmallFracts are used to save room,
  140. ;and to be compatible with Quickdraw's RGBColor.  They can be
  141. ;assigned directly to and from INTEGERs. 
  142. ; Unsigned fraction between 0 and 1 
  143. ; typedef unsigned short     SmallFract
  144. ; For developmental simplicity in switching between the HLS and HSV
  145. ;models, HLS is reordered into HSL. Thus both models start with
  146. ;hue and saturation values; value/lightness/brightness is last. 
  147. HSVColor                 RECORD    0
  148. hue                         ds.w   1        ; offset: $0 (0)        ;Fraction of circle, red at 0
  149. saturation                 ds.w   1        ; offset: $2 (2)        ;0-1, 0 for gray, 1 for pure color
  150. value                     ds.w   1        ; offset: $4 (4)        ;0-1, 0 for black, 1 for max intensity
  151. sizeof                     EQU *            ; size:   $6 (6)
  152.                         ENDR
  153.  
  154. ; typedef struct HSVColor     HSVColor
  155. HSLColor                 RECORD    0
  156. hue                         ds.w   1        ; offset: $0 (0)        ;Fraction of circle, red at 0
  157. saturation                 ds.w   1        ; offset: $2 (2)        ;0-1, 0 for gray, 1 for pure color
  158. lightness                 ds.w   1        ; offset: $4 (4)        ;0-1, 0 for black, 1 for white
  159. sizeof                     EQU *            ; size:   $6 (6)
  160.                         ENDR
  161.  
  162. ; typedef struct HSLColor     HSLColor
  163. CMYColor                 RECORD    0
  164. cyan                     ds.w   1        ; offset: $0 (0)
  165. magenta                     ds.w   1        ; offset: $2 (2)
  166. yellow                     ds.w   1        ; offset: $4 (4)
  167. sizeof                     EQU *            ; size:   $6 (6)
  168.                         ENDR
  169.  
  170. ; typedef struct CMYColor     CMYColor
  171. PMColor                 RECORD    0
  172. profile                     ds.l   1        ; offset: $0 (0)
  173. color                     ds.l   2        ; offset: $4 (4)
  174. sizeof                     EQU *            ; size:   $C (12)
  175.                         ENDR
  176.  
  177. ; typedef struct PMColor     PMColor, *PMColorPtr
  178. PickerIconData             RECORD    0
  179. scriptCode                 ds.w   1        ; offset: $0 (0)
  180. iconSuiteID                 ds.w   1        ; offset: $2 (2)
  181. helpResType                 ds.l   1        ; offset: $4 (4)
  182. helpResID                 ds.w   1        ; offset: $8 (8)
  183. sizeof                     EQU *            ; size:   $A (10)
  184.                         ENDR
  185.  
  186. ; typedef struct PickerIconData  PickerIconData
  187. PickerInitData             RECORD    0
  188. pickerDialog             ds.l   1        ; offset: $0 (0)
  189. choicesDialog             ds.l   1        ; offset: $4 (4)
  190. flags                     ds.l   1        ; offset: $8 (8)
  191. yourself                 ds.l   1        ; offset: $C (12)
  192. sizeof                     EQU *            ; size:   $10 (16)
  193.                         ENDR
  194.  
  195. ; typedef struct PickerInitData  PickerInitData
  196. PickerMenuItemInfo         RECORD    0
  197. editMenuID                 ds.w   1        ; offset: $0 (0)
  198. cutItem                     ds.w   1        ; offset: $2 (2)
  199. copyItem                 ds.w   1        ; offset: $4 (4)
  200. pasteItem                 ds.w   1        ; offset: $6 (6)
  201. clearItem                 ds.w   1        ; offset: $8 (8)
  202. undoItem                 ds.w   1        ; offset: $A (10)
  203. sizeof                     EQU *            ; size:   $C (12)
  204.                         ENDR
  205.  
  206. ; typedef struct PickerMenuItemInfo  PickerMenuItemInfo
  207. PickerMenuState         RECORD    0
  208. cutEnabled                 ds.b   1        ; offset: $0 (0)
  209. copyEnabled                 ds.b   1        ; offset: $1 (1)
  210. pasteEnabled             ds.b   1        ; offset: $2 (2)
  211. clearEnabled             ds.b   1        ; offset: $3 (3)
  212. undoEnabled                 ds.b   1        ; offset: $4 (4)
  213. undoString                 ds.l   64        ; offset: $5 (5)
  214.                          ORG 262
  215. sizeof                     EQU *            ; size:   $106 (262)
  216.                         ENDR
  217.  
  218. ; typedef struct PickerMenuState  PickerMenuState
  219. ColorPickerInfo         RECORD    0
  220. theColor                 ds     PMColor    ; offset: $0 (0)
  221. dstProfile                 ds.l   1        ; offset: $C (12)
  222. flags                     ds.l   1        ; offset: $10 (16)
  223. placeWhere                 ds.w   1        ; offset: $14 (20)
  224. dialogOrigin             ds     Point    ; offset: $16 (22)
  225. pickerType                 ds.l   1        ; offset: $1A (26)
  226. eventProc                 ds.l   1        ; offset: $1E (30)
  227. colorProc                 ds.l   1        ; offset: $22 (34)
  228. colorProcData             ds.l   1        ; offset: $26 (38)
  229. prompt                     ds.l   64        ; offset: $2A (42)
  230. mInfo                     ds     PickerMenuItemInfo ; offset: $12A (298)
  231. newColorChosen             ds.b   1        ; offset: $136 (310)
  232. filler                     ds.b   1        ; offset: $137 (311)
  233. sizeof                     EQU *            ; size:   $138 (312)
  234.                         ENDR
  235.  
  236. ; typedef struct ColorPickerInfo  ColorPickerInfo
  237. SystemDialogInfo         RECORD    0
  238. flags                     ds.l   1        ; offset: $0 (0)
  239. pickerType                 ds.l   1        ; offset: $4 (4)
  240. placeWhere                 ds.w   1        ; offset: $8 (8)
  241. dialogOrigin             ds     Point    ; offset: $A (10)
  242. mInfo                     ds     PickerMenuItemInfo ; offset: $E (14)
  243. sizeof                     EQU *            ; size:   $1A (26)
  244.                         ENDR
  245.  
  246. ; typedef struct SystemDialogInfo  SystemDialogInfo
  247. PickerDialogInfo         RECORD    0
  248. flags                     ds.l   1        ; offset: $0 (0)
  249. pickerType                 ds.l   1        ; offset: $4 (4)
  250. dialogOrigin             ds.l   1        ; offset: $8 (8)
  251. mInfo                     ds     PickerMenuItemInfo ; offset: $C (12)
  252. sizeof                     EQU *            ; size:   $18 (24)
  253.                         ENDR
  254.  
  255. ; typedef struct PickerDialogInfo  PickerDialogInfo
  256. ApplicationDialogInfo     RECORD    0
  257. flags                     ds.l   1        ; offset: $0 (0)
  258. pickerType                 ds.l   1        ; offset: $4 (4)
  259. theDialog                 ds.l   1        ; offset: $8 (8)
  260. pickerOrigin             ds     Point    ; offset: $C (12)
  261. mInfo                     ds     PickerMenuItemInfo ; offset: $10 (16)
  262. sizeof                     EQU *            ; size:   $1C (28)
  263.                         ENDR
  264.  
  265. ; typedef struct ApplicationDialogInfo  ApplicationDialogInfo
  266. EventData                 RECORD    0
  267. event                     ds.l   1        ; offset: $0 (0)
  268. action                     ds.w   1        ; offset: $4 (4)
  269. itemHit                     ds.w   1        ; offset: $6 (6)
  270. handled                     ds.b   1        ; offset: $8 (8)
  271. filler                     ds.b   1        ; offset: $9 (9)
  272. colorProc                 ds.l   1        ; offset: $A (10)
  273. colorProcData             ds.l   1        ; offset: $E (14)
  274. forcast                     ds.w   1        ; offset: $12 (18)
  275. sizeof                     EQU *            ; size:   $14 (20)
  276.                         ENDR
  277.  
  278. ; typedef struct EventData     EventData
  279. EditData                 RECORD    0
  280. theEdit                     ds.w   1        ; offset: $0 (0)
  281. action                     ds.w   1        ; offset: $2 (2)
  282. handled                     ds.b   1        ; offset: $4 (4)
  283. filler                     ds.b   1        ; offset: $5 (5)
  284. sizeof                     EQU *            ; size:   $6 (6)
  285.                         ENDR
  286.  
  287. ; typedef struct EditData     EditData
  288. ItemHitData             RECORD    0
  289. itemHit                     ds.w   1        ; offset: $0 (0)
  290. iMod                     ds.w   1        ; offset: $2 (2)
  291. action                     ds.w   1        ; offset: $4 (4)
  292. colorProc                 ds.l   1        ; offset: $6 (6)
  293. colorProcData             ds.l   1        ; offset: $A (10)
  294. where                     ds     Point    ; offset: $E (14)
  295. sizeof                     EQU *            ; size:   $12 (18)
  296.                         ENDR
  297.  
  298. ; typedef struct ItemHitData  ItemHitData
  299. HelpItemInfo             RECORD    0
  300. options                     ds.l   1        ; offset: $0 (0)
  301. tip                         ds     Point    ; offset: $4 (4)
  302. altRect                     ds     Rect    ; offset: $8 (8)
  303. theProc                     ds.w   1        ; offset: $10 (16)
  304. helpVariant                 ds.w   1        ; offset: $12 (18)
  305. helpMessage                 ds.w   129        ; offset: $14 (20)
  306. sizeof                     EQU *            ; size:   $116 (278)
  307.                         ENDR
  308.  
  309. ; typedef struct HelpItemInfo  HelpItemInfo
  310. ;    Below are the color conversion routines.
  311. ;
  312. ; pascal SmallFract Fix2SmallFract(Fixed f)
  313. ;
  314.     IF ¬ GENERATINGCFM THEN
  315.         Macro
  316.         _Fix2SmallFract
  317.             move.w    #$0001,-(sp)
  318.             dc.w     $A82E
  319.         EndM
  320.     ELSE
  321.         IMPORT_CFM_FUNCTION    Fix2SmallFract
  322.     ENDIF
  323.  
  324. ;
  325. ; pascal Fixed SmallFract2Fix(SmallFract s)
  326. ;
  327.     IF ¬ GENERATINGCFM THEN
  328.         Macro
  329.         _SmallFract2Fix
  330.             move.w    #$0002,-(sp)
  331.             dc.w     $A82E
  332.         EndM
  333.     ELSE
  334.         IMPORT_CFM_FUNCTION    SmallFract2Fix
  335.     ENDIF
  336.  
  337. ;
  338. ; pascal void CMY2RGB(const CMYColor *cColor, RGBColor *rColor)
  339. ;
  340.     IF ¬ GENERATINGCFM THEN
  341.         Macro
  342.         _CMY2RGB
  343.             move.w    #$0003,-(sp)
  344.             dc.w     $A82E
  345.         EndM
  346.     ELSE
  347.         IMPORT_CFM_FUNCTION    CMY2RGB
  348.     ENDIF
  349.  
  350. ;
  351. ; pascal void RGB2CMY(const RGBColor *rColor, CMYColor *cColor)
  352. ;
  353.     IF ¬ GENERATINGCFM THEN
  354.         Macro
  355.         _RGB2CMY
  356.             move.w    #$0004,-(sp)
  357.             dc.w     $A82E
  358.         EndM
  359.     ELSE
  360.         IMPORT_CFM_FUNCTION    RGB2CMY
  361.     ENDIF
  362.  
  363. ;
  364. ; pascal void HSL2RGB(const HSLColor *hColor, RGBColor *rColor)
  365. ;
  366.     IF ¬ GENERATINGCFM THEN
  367.         Macro
  368.         _HSL2RGB
  369.             move.w    #$0005,-(sp)
  370.             dc.w     $A82E
  371.         EndM
  372.     ELSE
  373.         IMPORT_CFM_FUNCTION    HSL2RGB
  374.     ENDIF
  375.  
  376. ;
  377. ; pascal void RGB2HSL(const RGBColor *rColor, HSLColor *hColor)
  378. ;
  379.     IF ¬ GENERATINGCFM THEN
  380.         Macro
  381.         _RGB2HSL
  382.             move.w    #$0006,-(sp)
  383.             dc.w     $A82E
  384.         EndM
  385.     ELSE
  386.         IMPORT_CFM_FUNCTION    RGB2HSL
  387.     ENDIF
  388.  
  389. ;
  390. ; pascal void HSV2RGB(const HSVColor *hColor, RGBColor *rColor)
  391. ;
  392.     IF ¬ GENERATINGCFM THEN
  393.         Macro
  394.         _HSV2RGB
  395.             move.w    #$0007,-(sp)
  396.             dc.w     $A82E
  397.         EndM
  398.     ELSE
  399.         IMPORT_CFM_FUNCTION    HSV2RGB
  400.     ENDIF
  401.  
  402. ;
  403. ; pascal void RGB2HSV(const RGBColor *rColor, HSVColor *hColor)
  404. ;
  405.     IF ¬ GENERATINGCFM THEN
  406.         Macro
  407.         _RGB2HSV
  408.             move.w    #$0008,-(sp)
  409.             dc.w     $A82E
  410.         EndM
  411.     ELSE
  412.         IMPORT_CFM_FUNCTION    RGB2HSV
  413.     ENDIF
  414.  
  415. ;    Below brings up the ColorPicker 1.0 Dialog
  416. ;
  417. ; pascal Boolean GetColor(Point where, ConstStr255Param prompt, const RGBColor *inColor, RGBColor *outColor)
  418. ;
  419.     IF ¬ GENERATINGCFM THEN
  420.         Macro
  421.         _GetColor
  422.             move.w    #$0009,-(sp)
  423.             dc.w     $A82E
  424.         EndM
  425.     ELSE
  426.         IMPORT_CFM_FUNCTION    GetColor
  427.     ENDIF
  428.  
  429. ;    Below are the ColorPicker 2.0 routines.
  430. ;
  431. ; pascal OSErr PickColor(ColorPickerInfo *theColorInfo)
  432. ;
  433.     IF ¬ GENERATINGCFM THEN
  434.         Macro
  435.         _PickColor
  436.             move.w    #$0213,-(sp)
  437.             dc.w     $A82E
  438.         EndM
  439.     ELSE
  440.         IMPORT_CFM_FUNCTION    PickColor
  441.     ENDIF
  442.  
  443. ;
  444. ; pascal OSErr AddPickerToDialog(ApplicationDialogInfo *info, picker *thePicker)
  445. ;
  446.     IF ¬ GENERATINGCFM THEN
  447.         Macro
  448.         _AddPickerToDialog
  449.             move.w    #$0414,-(sp)
  450.             dc.w     $A82E
  451.         EndM
  452.     ELSE
  453.         IMPORT_CFM_FUNCTION    AddPickerToDialog
  454.     ENDIF
  455.  
  456. ;
  457. ; pascal OSErr CreateColorDialog(SystemDialogInfo *info, picker *thePicker)
  458. ;
  459.     IF ¬ GENERATINGCFM THEN
  460.         Macro
  461.         _CreateColorDialog
  462.             move.w    #$0415,-(sp)
  463.             dc.w     $A82E
  464.         EndM
  465.     ELSE
  466.         IMPORT_CFM_FUNCTION    CreateColorDialog
  467.     ENDIF
  468.  
  469. ;
  470. ; pascal OSErr CreatePickerDialog(PickerDialogInfo *info, picker *thePicker)
  471. ;
  472.     IF ¬ GENERATINGCFM THEN
  473.         Macro
  474.         _CreatePickerDialog
  475.             move.w    #$0416,-(sp)
  476.             dc.w     $A82E
  477.         EndM
  478.     ELSE
  479.         IMPORT_CFM_FUNCTION    CreatePickerDialog
  480.     ENDIF
  481.  
  482. ;
  483. ; pascal OSErr DisposeColorPicker(picker thePicker)
  484. ;
  485.     IF ¬ GENERATINGCFM THEN
  486.         Macro
  487.         _DisposeColorPicker
  488.             move.w    #$0217,-(sp)
  489.             dc.w     $A82E
  490.         EndM
  491.     ELSE
  492.         IMPORT_CFM_FUNCTION    DisposeColorPicker
  493.     ENDIF
  494.  
  495. ;
  496. ; pascal OSErr GetPickerVisibility(picker thePicker, Boolean *visible)
  497. ;
  498.     IF ¬ GENERATINGCFM THEN
  499.         Macro
  500.         _GetPickerVisibility
  501.             move.w    #$0418,-(sp)
  502.             dc.w     $A82E
  503.         EndM
  504.     ELSE
  505.         IMPORT_CFM_FUNCTION    GetPickerVisibility
  506.     ENDIF
  507.  
  508. ;
  509. ; pascal OSErr SetPickerVisibility(picker thePicker, short visible)
  510. ;
  511.     IF ¬ GENERATINGCFM THEN
  512.         Macro
  513.         _SetPickerVisibility
  514.             move.w    #$0319,-(sp)
  515.             dc.w     $A82E
  516.         EndM
  517.     ELSE
  518.         IMPORT_CFM_FUNCTION    SetPickerVisibility
  519.     ENDIF
  520.  
  521. ;
  522. ; pascal OSErr SetPickerPrompt(picker thePicker, Str255 promptString)
  523. ;
  524.     IF ¬ GENERATINGCFM THEN
  525.         Macro
  526.         _SetPickerPrompt
  527.             move.w    #$041a,-(sp)
  528.             dc.w     $A82E
  529.         EndM
  530.     ELSE
  531.         IMPORT_CFM_FUNCTION    SetPickerPrompt
  532.     ENDIF
  533.  
  534. ;
  535. ; pascal OSErr DoPickerEvent(picker thePicker, EventData *data)
  536. ;
  537.     IF ¬ GENERATINGCFM THEN
  538.         Macro
  539.         _DoPickerEvent
  540.             move.w    #$041b,-(sp)
  541.             dc.w     $A82E
  542.         EndM
  543.     ELSE
  544.         IMPORT_CFM_FUNCTION    DoPickerEvent
  545.     ENDIF
  546.  
  547. ;
  548. ; pascal OSErr DoPickerEdit(picker thePicker, EditData *data)
  549. ;
  550.     IF ¬ GENERATINGCFM THEN
  551.         Macro
  552.         _DoPickerEdit
  553.             move.w    #$041c,-(sp)
  554.             dc.w     $A82E
  555.         EndM
  556.     ELSE
  557.         IMPORT_CFM_FUNCTION    DoPickerEdit
  558.     ENDIF
  559.  
  560. ;
  561. ; pascal OSErr DoPickerDraw(picker thePicker)
  562. ;
  563.     IF ¬ GENERATINGCFM THEN
  564.         Macro
  565.         _DoPickerDraw
  566.             move.w    #$021d,-(sp)
  567.             dc.w     $A82E
  568.         EndM
  569.     ELSE
  570.         IMPORT_CFM_FUNCTION    DoPickerDraw
  571.     ENDIF
  572.  
  573. ;
  574. ; pascal OSErr GetPickerColor(picker thePicker, ColorType whichColor, PMColor *color)
  575. ;
  576.     IF ¬ GENERATINGCFM THEN
  577.         Macro
  578.         _GetPickerColor
  579.             move.w    #$051e,-(sp)
  580.             dc.w     $A82E
  581.         EndM
  582.     ELSE
  583.         IMPORT_CFM_FUNCTION    GetPickerColor
  584.     ENDIF
  585.  
  586. ;
  587. ; pascal OSErr SetPickerColor(picker thePicker, ColorType whichColor, PMColor *color)
  588. ;
  589.     IF ¬ GENERATINGCFM THEN
  590.         Macro
  591.         _SetPickerColor
  592.             move.w    #$051f,-(sp)
  593.             dc.w     $A82E
  594.         EndM
  595.     ELSE
  596.         IMPORT_CFM_FUNCTION    SetPickerColor
  597.     ENDIF
  598.  
  599. ;
  600. ; pascal OSErr GetPickerOrigin(picker thePicker, Point *where)
  601. ;
  602.     IF ¬ GENERATINGCFM THEN
  603.         Macro
  604.         _GetPickerOrigin
  605.             move.w    #$0420,-(sp)
  606.             dc.w     $A82E
  607.         EndM
  608.     ELSE
  609.         IMPORT_CFM_FUNCTION    GetPickerOrigin
  610.     ENDIF
  611.  
  612. ;
  613. ; pascal OSErr SetPickerOrigin(picker thePicker, Point where)
  614. ;
  615.     IF ¬ GENERATINGCFM THEN
  616.         Macro
  617.         _SetPickerOrigin
  618.             move.w    #$0421,-(sp)
  619.             dc.w     $A82E
  620.         EndM
  621.     ELSE
  622.         IMPORT_CFM_FUNCTION    SetPickerOrigin
  623.     ENDIF
  624.  
  625. ;
  626. ; pascal OSErr GetPickerProfile(picker thePicker, CMProfileHandle *profile)
  627. ;
  628.     IF ¬ GENERATINGCFM THEN
  629.         Macro
  630.         _GetPickerProfile
  631.             move.w    #$0422,-(sp)
  632.             dc.w     $A82E
  633.         EndM
  634.     ELSE
  635.         IMPORT_CFM_FUNCTION    GetPickerProfile
  636.     ENDIF
  637.  
  638. ;
  639. ; pascal OSErr SetPickerProfile(picker thePicker, CMProfileHandle profile)
  640. ;
  641.     IF ¬ GENERATINGCFM THEN
  642.         Macro
  643.         _SetPickerProfile
  644.             move.w    #$0423,-(sp)
  645.             dc.w     $A82E
  646.         EndM
  647.     ELSE
  648.         IMPORT_CFM_FUNCTION    SetPickerProfile
  649.     ENDIF
  650.  
  651. ;
  652. ; pascal OSErr GetPickerEditMenuState(picker thePicker, PickerMenuState *mState)
  653. ;
  654.     IF ¬ GENERATINGCFM THEN
  655.         Macro
  656.         _GetPickerEditMenuState
  657.             move.w    #$0424,-(sp)
  658.             dc.w     $A82E
  659.         EndM
  660.     ELSE
  661.         IMPORT_CFM_FUNCTION    GetPickerEditMenuState
  662.     ENDIF
  663.  
  664. ;
  665. ; pascal OSErr ExtractPickerHelpItem(picker thePicker, short itemNo, short whichState, HelpItemInfo *helpInfo)
  666. ;
  667.     IF ¬ GENERATINGCFM THEN
  668.         Macro
  669.         _ExtractPickerHelpItem
  670.             move.w    #$0625,-(sp)
  671.             dc.w     $A82E
  672.         EndM
  673.     ELSE
  674.         IMPORT_CFM_FUNCTION    ExtractPickerHelpItem
  675.     ENDIF
  676.  
  677.     ENDIF ; __COLORPICKER__
  678.